home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / x2ftp / msdos / libs / 3dvect39 / 3d.ext < prev    next >
Text File  |  1994-10-30  |  6KB  |  210 lines

  1. ;░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  2. ;
  3. ; Filename     : 3d.ext
  4. ; Included from: Any program which requires data from 3D1.ASM, 3D2.ASM, 3D3.ASM
  5. ; Description  : Externals for 3D1.ASM, 3D2.ASM, 3D3.ASM
  6. ;
  7. ; Written by: John McCarthy
  8. ;             1316 Redwood Lane
  9. ;             Pickering, Ontario.
  10. ;             Canada, Earth, Milky Way (for those out-of-towners)
  11. ;             L1X 1C5
  12. ;
  13. ; Internet/Usenet:  BRIAN.MCCARTHY@CANREM.COM
  14. ;         Fidonet:  Brian McCarthy 1:229/15
  15. ;   RIME/Relaynet: ->CRS
  16. ;
  17. ; Home phone, (905) 831-1944, don't call at 2 am eh!
  18. ;
  19. ; Send me your protected mode source code!
  20. ; Send me your Objects!
  21. ; But most of all, Send me a postcard!!!!
  22. ;
  23. ;░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
  24.  
  25. ; data definition offsets: shape data, _bitmap data, _bitmap scaling, xref palette
  26.  
  27.          extrn _objbase:dword, _bitbase:dword, _bitx:dword, _bity:dword
  28.          extrn _xreftable:dword, _stonetbl:dword, _stoneadd:byte
  29.  
  30. ; these are tables of values for defining object locations
  31. ; sizes of tables = maxobjects
  32.  
  33.          extrn _xs:dword, _ys:dword, _zs:dword
  34.          extrn _xadds:dword, _yadds:dword, _zadds:dword
  35.          extrn _vxs:word, _vys:word, _vzs:word
  36.          extrn _vxadds:word, _vyadds:word, _vzadds:word
  37.          extrn _lcount:word, _acountx:word, _acounty:word , _acountz:word
  38.          extrn _whatshape:word, _userotate:byte, _onoff:byte
  39.          extrn _palxref:byte, _bitobjx:word, _bitobjy:word
  40.  
  41. ; these are single values for defining the camera location
  42.  
  43.          extrn _eyex:dword, _eyey:dword, _eyez:dword
  44.          extrn _eyeax:word, _eyeay:word, _eyeaz:word
  45.          extrn _eyexadds:dword, _eyeyadds:dword, _eyezadds:dword
  46.          extrn _eyevxadds:word, _eyevyadds:word, _eyevzadds:word
  47.          extrn _eyelcount:word, _eyeacountx:word, _eyeacounty:word , _eyeacountz:word
  48.  
  49. ; misc data
  50.  
  51.          extrn _vmatrix:dword
  52.          extrn _tmatrix:dword
  53.          extrn _ematrix:dword
  54.          extrn _lmatrix:dword
  55.          extrn _y_angle_of_sun:dword
  56.          extrn _ecosx:dword
  57.          extrn _esinx:dword
  58.          extrn _ecosy:dword
  59.          extrn _esiny:dword
  60.          extrn _ecosz:dword
  61.          extrn _esinz:dword
  62.  
  63.          extrn _cam_follow:dword
  64.          extrn _cam_wherelook:dword
  65.          extrn _cam_oldspeed:dword
  66.  
  67. ; for scale routine
  68.  
  69.          extrn _bitmap:dword
  70.          extrn _scale_destwidth:word
  71.          extrn _scale_destheight:word
  72.          extrn _scale_destx:word
  73.          extrn _scale_desty:word
  74.  
  75. ; for _fakeline_horz routine
  76.  
  77.          extrn _x1:word
  78.          extrn _y1:word
  79.          extrn _x2:word
  80.          extrn _y2:word
  81.  
  82. ; for calling _polyfill (after calling _fakeline_horz)
  83.  
  84.          extrn _colq:byte
  85.  
  86. ; for windowing
  87.  
  88.          extrn _3d_makeorder:dword
  89.          extrn _poly_oney:word
  90.          extrn _poly_firstbyte:word
  91.          extrn _poly_lastbyte:word
  92.          extrn _showing:word
  93.  
  94. ; misc routines from 3d.asm and poly.inc
  95.  
  96.          extrn _fakeline_horz:near
  97.          extrn _fakeline_vert:near
  98.          extrn _polyfill:near
  99.          extrn _makeobjs:near
  100.          extrn _make1obj:near
  101.          extrn _setsincose:near
  102.          extrn _init_tables:near
  103.          extrn _flush_surfaces:near
  104.          extrn _clipped_line:near
  105.          extrn _set_clip_absolute:near
  106.          extrn _set_clip_offset:near
  107.          extrn _drawvect:near
  108.          extrn _sortlist:near
  109.          extrn _copy_virtual_objects:near
  110.  
  111. ; poly.inc - fast imul table, eg: _screen_width*si = _fastimultable[si]
  112.  
  113.          extrn _fastimultable:dword
  114.  
  115. ; _xscale1.inc
  116.  
  117.          extrn _xscale1:near
  118.          extrn _xscale2:near
  119.          extrn _xscale4:near
  120.          extrn _draw_scale:near
  121.          extrn _tdraw_scale:near
  122.          extrn _tdraw_scale4:near
  123.          extrn _repeat_bitmap:near
  124.  
  125. ; math.inc
  126.  
  127.          extrn _make3d:dword
  128.          extrn _make3dx:dword
  129.          extrn _make3dy:dword
  130.          extrn _user3d:near
  131.          extrn _user3dx:near
  132.          extrn _user3dy:near
  133.          extrn _xsolve:near
  134.          extrn _ysolve:near
  135.          extrn _zsolve:near
  136.          extrn _rotate_by_camera:near
  137.          extrn _rotate_point:near
  138.          extrn _arctan:near
  139.          extrn _cosine:near
  140.          extrn _sine:near
  141.          extrn _setsincose:near
  142.          extrn _compound:near
  143.          extrn _sqrt:near
  144.          extrn _temp_matrix:near
  145.          extrn _temp_rotate_point:near
  146.          extrn _matrix_multiply:near
  147.          extrn _null_y_matrix:near
  148.          extrn _inverse_rotate:near
  149.          extrn _rotate_x:near
  150.          extrn _rotate_y:near
  151.          extrn _rotate_z:near
  152.          extrn _point_z:near
  153.  
  154.          extrn _cliplt:word
  155.          extrn _cliprt:word
  156.          extrn _cliptp:word
  157.          extrn _clipbt:word
  158.          extrn _xcent:word
  159.          extrn _ycent:word
  160.          extrn _xmins:word
  161.          extrn _xmins1:word
  162.          extrn _xmaxs:word
  163.          extrn _xmaxs1:word
  164.          extrn _ymins:word
  165.          extrn _ymins1:word
  166.          extrn _ymaxs:word
  167.          extrn _ymaxs1:word
  168.  
  169.          extrn _lambert:near
  170.          extrn _pre_cal_lambert:near
  171.          extrn _calc_normal:near
  172.          extrn _calc_d:near
  173.          extrn _set_up_all_lambert:near
  174.          extrn _l_rotate_point:near
  175.  
  176.          extrn _lx1:dword
  177.          extrn _ly1:dword
  178.          extrn _lz1:dword
  179.          extrn _lx2:dword
  180.          extrn _ly2:dword
  181.          extrn _lz2:dword
  182.          extrn _lx3:dword
  183.          extrn _ly3:dword
  184.          extrn _lz3:dword
  185.  
  186. ; list of current assembley restraints - can be used to test if object file
  187. ; was assembled with ample room/size of tables.
  188.  
  189.          extrn _asm_version:word
  190.          extrn _asm_maxpoints:word
  191.          extrn _asm_maxsurfaces:word
  192.          extrn _asm_maxpolys:word
  193.          extrn _asm_maxobjects:word
  194.          extrn _asm_number_spaces:word
  195.          extrn _asm_xsize:word
  196.          extrn _asm_ysize:word
  197.          extrn _asm_usez:word
  198.          extrn _asm_cameraobject:word
  199.          extrn _asm_xmode:word
  200.          extrn _asm_ratiox:word
  201.          extrn _asm_ratioy:word
  202.          extrn _asm_xactual:word
  203.          extrn _asm_yactual:word
  204.          extrn _asm_pages:word
  205.          extrn _asm_shapes:dword
  206.          extrn _asm_bitmaps:word
  207.          extrn _asm_xpals:word
  208.          extrn _asm_div256:word
  209.  
  210.